<?php

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Description of DaoSeguimiento
 *
 * @author amartinez
 */
include_once '../../controlador/php/conexion/Conexion.php';
class DaoSeguimiento {
    private $OidObservacion;
    private $RecepcionSegOid;
    private $Descripcion;
    private $usu_verifica;
    private $usu_registra;
    private $EsVerificado;
    private $EsAlerta;
    private $TiempoInicial;
    private $TiempoFinal;
    
    function __construct($OidObservacion,$RecepcionSegOid,$Descripcion,$usu_verifica,$usu_registra,$EsVerificado,$EsAlerta,$TiempoInicial,$TiempoFinal) {
        $this->OidObservacion = $OidObservacion;
        $this->RecepcionSegOid = $RecepcionSegOid;
        $this->Descripcion = $Descripcion;
        $this->usu_verifica = $usu_verifica;
        $this->usu_registra = $usu_registra;
        $this->EsVerificado = $EsVerificado;
        $this->EsAlerta = $EsAlerta;
        $this->TiempoInicial = $TiempoInicial;
        $this->TiempoFinal = $TiempoFinal;
    }
    
    public function getOidObservacion(){
        return $this->OidObservacion;
    }
    public function setOidObservacion($OidObservacion){
        $this->OidObservacion = $OidObservacion;
    }
    public function getRecepcionSegOid(){
        return $this->RecepcionSegOid;
    }
    public function setRecepcionSegOid($RecepcionSegOid){
        $this->RecepcionSegOid = $RecepcionSegOid;
    }
    public function getDescripcion(){
        return $this->Descripcion;
    }
    public function setDescripcion($Descripcion){
        $this->Descripcion = $Descripcion;
    }
    public function getusu_verifica(){
        return $this->usu_verifica;
    }
    public function setusu_verifica($usu_verifica){
        $this->usu_verifica = $usu_verifica;
    }
    public function getusu_registra(){
        return $this->usu_registra;
    }
    public function setusu_registra($usu_registra){
        $this->usu_registra = $usu_registra;
    }
    public function getEsVerificado(){
        return $this->EsVerificado;
    }
    public function setEsVerificado($EsVerificado){
        $this->EsVerificado = $EsVerificado;
    }
    public function getEsAlerta(){
        return $this->EsAlerta;
    }
    public function setEsAlerta($EsAlerta){
        $this->EsAlerta = $EsAlerta;
    }
    public function getTiempoInicial(){
        return $this->TiempoInicial;
    }
    public function setTiempoInicial($TiempoInicial){
        $this->TiempoInicial = $TiempoInicial;
    }
    public function getTiempoFinal(){
        return $this->TiempoFinal;
    }
    public function setTiempoFinal($TiempoFinal){
        $this->TiempoFinal = $TiempoFinal;
    }
    
    function GuardarSeguimiento($OidRevisar){
        $con = new Conexion();
        
        $stmt = mssql_init('Usp_Observaciones');
        
        mssql_bind($stmt, '@RecepcionSegOid', $this->RecepcionSegOid, SQLINT4);
        mssql_bind($stmt, '@Descripcion', $this->Descripcion, SQLTEXT);
        mssql_bind($stmt, '@usu_registra', $this->usu_registra, SQLINT4);
        mssql_bind($stmt, '@EsVerificado', $this->EsVerificado, SQLINT4);
        mssql_bind($stmt, '@EsAlerta', $this->EsAlerta, SQLINT4);
        mssql_bind($stmt, '@Tiempoinicial', $this->TiempoInicial, SQLVARCHAR);
        mssql_bind($stmt, '@Tiempofinal', $this->TiempoFinal, SQLVARCHAR);
        
        mssql_execute($stmt);
        mssql_free_statement($stmt);
        
        $SacarOid = "SELECT MAX(Oid) AS OID FROM Rec_Observaciones_New";
        $Respuesta = $con ->query($SacarOid);
        
        while ($Respuesta2 = mssql_fetch_array($Respuesta)){
            $Oid = $Respuesta2['OID'];
        }
        
        $Insertar = "INSERT INTO Rec_SeguObservacion_New(OidObservacion,OidSegAlerta)VALUES('".$Oid."','".$OidRevisar."')";
        $con ->query($Insertar);
        
        
        $con->cerrarConexion();
    }
    
    function ConsultarSeguimiento(){
        $con = new Conexion();
        
        $select = "SELECT A.Oid,RecepcionSegOid,CAST(Descripcion AS TEXT) AS Descripcion,usu_verifica,usu_registra,EsVerificado,EsAlerta,TiempoInicial,TiempoFinal,FechaRegistro,
                   FechaVerificado,Oidobservacion,OidSegAlerta, Nombre,Color,TiempoHoras, LTRIM(RTRIM(usu_nombres))+' '+LTRIM(RTRIM(usu_apellidos)) AS UsuarioRegistra
                   FROM Rec_Observaciones_New AS A
                   INNER JOIN Rec_SeguObservacion_New AS B ON A.Oid = B.OidObservacion
                   INNER JOIN Rec_SeguAlerta_New AS C ON B.OidSegAlerta = C.Oid
                   INNER JOIN usuario AS D ON A.usu_registra = D.usu_oid
                   WHERE RecepcionSegOid ='".$this->RecepcionSegOid."'";
        
        $Respuesta = $con->query($select);
        
        while ($respuesta2 = mssql_fetch_array($Respuesta)){
            
            $Lista[] = array_map(utf8_encode,$respuesta2);
            
        }
        
        print_r(json_encode($Lista));
        
        $con->cerrarConexion();
    }
    
    function EditarSegumiento($Hora){
        $con = new Conexion();
        
        $EditarSeguimiento = "UPDATE Rec_Observaciones_New
                              SET Descripcion = '".$this->Descripcion."',
                              usu_registra = '".$this->usu_registra."',
                              EsAlerta = '".$this->EsAlerta."',
                              TiempoInicial = '".$this->TiempoInicial."',
                              TiempoFinal = '".$this->TiempoFinal."'
                              WHERE Oid = '".$this->OidObservacion."'";
        
        $con ->query($EditarSeguimiento);
        
        $Update = "UPDATE Rec_SeguObservacion_New
                   SET OidSegAlerta = '".$Hora."'
                   WHERE OidObservacion ='".$this->OidObservacion."'";
        $con ->query($Update);
        
        $con ->cerrarConexion();
                
    }
    function VerificarAlerta(){
        $con = new Conexion();
        
        $VerificarAlerta = "UPDATE Rec_Observaciones_New
                            SET usu_verifica = '".$this->usu_verifica."',
                            EsVerificado = '".$this->EsVerificado."',
                            FechaVerificado = GETDATE()
                            WHERE Oid = '".$this->OidObservacion."'";
        
        $con ->query($VerificarAlerta);
        
        $con ->cerrarConexion();
    }
}

?>
